class my_queue():
    def __init__(self):
        self.data=[None]*5
        self.head=0
        self.tail=0 #超出末端
        self.is_empty=True
        self.is_full=False
    def enqueue(self,x):
        if self.is_full:
            raise Exception('Queue Overflow')
        else:
            self.data[self.tail]=x
        if self.tail==len(self.data)-1:
            self.tail=0
        else:
            self.tail+=1
        self.is_empty=False
        if self.tail==self.head:
            self.is_full=True
    def dequeue(self):
        if self.is_empty:
            raise Exception('Queue Unerflow')
        else:
            x=self.data[self.head]
        if self.head==len(self.data)-1:
            self.head=0
        else:
            self.head+=1
        self.is_full=False
        if self.head==self.tail:
            self.is_empty=True
        return x

if __name__=='__main__':
    a=my_queue()
    a.enqueue(1)
    a.enqueue(2)
    a.enqueue(100)
    a.enqueue(10)
    a.enqueue(2)
    #a.enqueue(5)
    print a.dequeue()
    print a.dequeue()
    print a.dequeue()
    print a.dequeue()
    print a.dequeue()
    #print a.dequeue()
